Monitors and Exceptions: How to Implement Java Eeciently
نویسندگان
چکیده
EEcient implementation of monitors and exceptions is crucial for the performance of Java. One implementation of threads showed a factor of 30 diierence in run time on some benchmark programs. This article describes an eecient implementation of monitors for Java as used in the CACAO just-in-time compiler. With this implementation the thread overhead is less than 40% for typical application programs and can be completely eliminated for some applications. This article also gives the implementation details of the new exception handling scheme in CACAO. The new approach reduces the size of the generated native code by a half and allows null pointers to be checked by hardware. By using these techniques, the CACAO system has become the fastest JavaVM implementation for the Alpha processor.
منابع مشابه
Monitors and Exceptions: How to Implement Java Efficiently
EEcient implementation of monitors and exceptions is crucial for the performance of Java. One implementation of threads showed a factor of 30 diierence in run time on some benchmark programs. This article describes an eecient implementation of monitors for Java as used in the CACAO just-in-time compiler. With this implementation the thread overhead is less than 40% for typical application progr...
متن کاملE cient and Precise Modeling of Exceptions for the Analysis of Java Programs
The Factored Control Flow Graph, FCFG, is a novel representation of a program's intraprocedural control ow, which is designed to eeciently support the analysis of programs written in languages, such as Java, that have frequently occurring operations whose execution may result in exceptional control ow. The FCFG is more compact than traditional CFG representations for exceptional control ow, yet...
متن کاملAn Exception Monitoring System for Java
Exception mechanism is important for the development of robust programs to make sure that exceptions are handled appropriately at run-time. In this paper, we develop a dynamic exception monitoring system, which can trace handling and propagation of thrown exceptions in real-time. With this tool, programmers can examine exception handling process in more details and handle exceptions more effect...
متن کاملA Decoupled Translate Execute (DTE) Architecture to Improve Performance of Java Execution
Java is increasing in popularity in the software industry , and is being used to implement server and enterprise scale projects. Such applications require high performance , and need to run eeciently. Techniques like JIT compilers and PicoJava chips ooer some speedup, but in this paper we look at alternate techniques in hardware which could be incorporated in future microprocessors. We propose ...
متن کاملSHRIFT System-Wide HybRid Information Flow Tracking
Using data flow tracking technology, one can observe how data flows from inputs (sources) to outputs (sinks) of a software system. It has been proposed [1] to do runtime data flow tracking at various layers simultaneously (operating system, application, data base, window manager, etc.), and connect the monitors’ observations to exploit semantic information about the layers to make analyses more...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1998